package com.ruoyi.system.mapper;

import java.math.BigDecimal;
import java.util.List;
import com.ruoyi.system.domain.HmzEmployeeInfo;
import org.apache.ibatis.annotations.Param;

/**
 * 员工信息Mapper接口
 *
 * @author ruoyi
 * @date 2024-10-30
 */
public interface HmzEmployeeInfoMapper
{
    /**
     * 查询员工信息
     *
     * @param id 员工信息主键
     * @return 员工信息
     */
    public HmzEmployeeInfo selectHmzEmployeeInfoById(Long id);
    /**
     * 查询员工信息
     *
     * @param name 员工信息名称
     * @return 员工信息
     */
    public HmzEmployeeInfo selectHmzEmployeeInfoByName(String name);
    /**
     * 查询员工信息列表
     *
     * @param hmzEmployeeInfo 员工信息
     * @return 员工信息集合
     */
    public List<HmzEmployeeInfo> selectHmzEmployeeInfoList(HmzEmployeeInfo hmzEmployeeInfo);

    /**
     * 新增员工信息
     *
     * @param hmzEmployeeInfo 员工信息
     * @return 结果
     */
    public int insertHmzEmployeeInfo(HmzEmployeeInfo hmzEmployeeInfo);

    /**
     * 修改员工信息
     *
     * @param hmzEmployeeInfo 员工信息
     * @return 结果
     */
    public int updateHmzEmployeeInfo(HmzEmployeeInfo hmzEmployeeInfo);

    /**
     * 删除员工信息
     *
     * @param id 员工信息主键
     * @return 结果
     */
    public int deleteHmzEmployeeInfoById(Long id);

    /**
     * 批量删除员工信息
     *
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteHmzEmployeeInfoByIds(Long[] ids);

    int updateBalance(@Param("employeeId") Long employeeId, @Param("balance") BigDecimal balance);

    BigDecimal selectPrice();

    int updateBalanceNew(@Param("employeeId") Long employeeId, @Param("balance") BigDecimal balance);

    HmzEmployeeInfo selectByEpc(@Param("epc") String epc);

    Long selectznums(@Param("id") Long id);
    Long selectwnums(@Param("id") Long id);
    Long selectynums(@Param("id") Long id);

    Double selectMeoneyByemId(@Param("id") Long id,@Param("month") String month);
}
